# 产品概述 ```{admonition} 本文引用的文件 :class: note - [docs/docs/zh_CN/index.rst](../../../products/mpython/index.rst) - [docs/docs/zh_CN/board/introduction.rst](../../../products/mpython/board/introduction.rst) - [esp32s3/docs/index.rst](../../../products/mpython-s3/index.rst) - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) - `firmware/port/boards/mpython/modules/mpython.py` - `esp32s3/firmware/boards/mpython_v3/board.json` - `esp32s3/firmware/boards/labplus_Ledong_v2/board.json` - [esp32s3/docs/boards/ledong_v2/index.rst](../../../products/ledong-v2/index.rst) ``` ## 产品概述 - 项目定位:掌控板是面向K12创客教育的开源硬件与软件生态,内置MicroPython解释器,支持Python编程,帮助师生快速完成从创意到原型的实践。 - 目标用户:中小学信息技术教师与学生、STEAM/创客教育从业者、物联网与AIoT初学者、开源硬件爱好者。 - 核心价值:以“为教育而生”的开源理念,提供易上手的Python编程体验、丰富的板载传感器与显示能力、完善的示例与文档、以及可拓展的软硬件生态。 - 适用场景:课堂实验、课后创客项目、物联网原型开发、语音与AI启蒙、图形化与代码混合教学(Scratch/Mind+)、竞赛与展示。 - 产品线概览: - 经典ESP32系列:标准掌控板(mpython),板载OLED、加速度计、地磁、声光传感器等,支持WiFi+蓝牙双模通信。 - ESP32-S3升级线:掌控板3.0(mpython_v3)与乐动掌控2.0(labplus_Ledong_v2),采用ESP32-S3高性能双核芯片,配备更大存储与彩屏、音频与更多传感器,并集成小智AI助手能力。 - 生态链接:官网、软件下载、开源固件与文档站点均在官方文档中给出,便于新用户一站式获取资源。 章节来源 - [docs/docs/zh_CN/index.rst:6-24](../../../products/mpython/index.rst) - [docs/docs/zh_CN/board/introduction.rst:5-13](../../../products/mpython/board/introduction.rst) - [esp32s3/docs/index.rst:7-22](../../../products/mpython-s3/index.rst) - [esp32s3/docs/boards/ledong_v2/index.rst:7-24](../../../products/ledong-v2/index.rst) ## 核心业务流程 - 学习路径:安装编程软件 → 连接设备 → 运行入门教程(REPL/OLED/按键/网络)→ 逐步进阶到IoT/AI应用。 - 典型创作流程: - 选择板型与软件环境(mPython IDE / Labplus 3 / Mind+)。 - 通过USB或无线方式将脚本部署到掌控板。 - 使用板载传感器与外设(显示、按键、触摸、声音、光线、六轴、磁力、RGB灯)实现交互。 - 接入网络(WiFi/蓝牙)与云端服务(天气、MQTT、AI服务等),完成端到端项目。 - 关键交互节点: - 屏幕显示与UI绘制(OLED/TFT)。 - 输入采集(实体按键、触摸按键、传感器数据)。 - 输出控制(蜂鸣器、RGB灯、电机扩展、音频播放)。 - 通信与联网(WiFi/蓝牙、广播、HTTP/MQTT)。 - AI能力(语音听写/合成、视觉识别、大模型对话等,视板型与模块而定)。 章节来源 - [docs/docs/zh_CN/tutorials/basics/index.rst:1-21](../../../products/mpython/tutorials/basics/index.rst) - [esp32s3/docs/index.rst:25-35](../../../products/mpython-s3/index.rst) ## 功能模块清单 - 显示与界面 - ESP32系列:OLED类(基于SSD1106 I2C,128x64),支持中文黑体字符、自定义字体、基础绘图。 - ESP32-S3系列:TFT_displayer(基于framebuf,320x172 RGB565),提供更高分辨率彩色显示与UI组件。 - 输入与传感 - 按键与触摸:实体按键A/B与触摸键P/Y/T/H/O/N;支持事件回调与去抖处理。 - 运动与姿态:加速度计、陀螺仪、磁力计,支持量程、分辨率、偏移校准与NVS持久化。 - 环境与感知:光线传感器、麦克风、心率/气压/超声波等(按板型与模块)。 - 通信与网络 - WiFi与蓝牙:STA/AP模式、BLE广播与GATT服务、ESP-NOW(S3新增)。 - 无线广播:短距消息收发(ESP32 C级模块;S3迁移至Python层)。 - 物联网协议:MQTT、HTTP请求、Websocket等。 - 多媒体与AI - 音乐与音频:music模块(兼容micro:bit曲库)、音频编解码与播放、录音与响度检测(ESP32)。 - 语音与AI:讯飞语音听写/TTS(ESP32 C级模块)、AI云端接口(S3新增)、小智AI助手(S3文档章节)。 - 扩展与驱动 - 扩展板:bluebit、parrot等。 - 常用驱动:neopixel、ssd1106、mfrc、hcsr04、sdcard等。 - 文件系统与工具 - 按板型维护的文件系统:LVGL图形界面、在线编程入口、UI组件、AI API封装等。 - 构建与部署:镜像拼接、分区表、板型配置(board.json、sdkconfig)。 章节来源 - `firmware/port/boards/mpython/modules/mpython.py:91-197` - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst:11-39](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) - [esp32s3/docs/index.rst:25-35](../../../products/mpython-s3/index.rst) ## 数据与状态 - 核心数据模型 - 显示缓冲:framebuf对象用于像素级绘制与文本渲染。 - 传感器数据:加速度/角速度/磁场向量、角度、强度、航向角等。 - 网络状态:WiFi STA/AP连接状态、信道、信号强度、IP地址。 - 音频状态:播放器/录音器初始化、音量、播放进度、录音时长。 - 关键状态流转 - 显示:初始化 → 清屏/绘制 → 刷新显示。 - 输入:按键/触摸事件触发 → 回调处理 → 更新UI或执行动作。 - 传感:采样 → 滤波/校准 → 输出数值或事件。 - 网络:扫描/连接 → 建立会话 → 发送/接收数据 → 断开释放。 - 音频:初始化 → 播放/录音 → 暂停/停止 → 释放资源。 - 数据所有权边界 - 板载模块由固件内置模块管理(如machine/framebuf/motion/music)。 - 扩展模块与AI能力由Python模块或C级builtins提供,遵循各自API契约。 - 文件系统按板型独立维护,避免跨板型依赖冲突。 章节来源 - `firmware/port/boards/mpython/modules/mpython.py:91-197` - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst:40-61](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) ## 关键约束与边界 - 非功能性需求 - 性能:ESP32-S3双核高主频与较大内存,适合复杂UI与AI任务;ESP32系列适合轻量级IoT与教学演示。 - 功耗:USB供电与电池供电方案需根据应用场景设计;注意外设功耗与休眠策略。 - 可靠性:网络与无线通信需考虑超时、重试与错误恢复;传感器需校准与去噪。 - 依赖与集成边界 - 软件栈:MicroPython + ESP-IDF(S3)/ ESP32原生;不同板型存在API差异(如显示从OLED到TFT)。 - 外部服务:AI与物联网平台需账号与密钥配置;离线能力受限于本地模块与缓存。 - 硬件扩展:金手指IO与I2C/SPI/UART等资源有限,需合理分配引脚与总线。 - 业务约束 - 教育场景优先:强调易用性、安全性与可维护性;避免过度复杂化。 - 开源合规:遵循GPL/CERN/CC0许可要求,尊重第三方组件授权。 - 兼容性:尽量保持与micro:bit等生态的API兼容,降低迁移成本。 章节来源 - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst:11-39](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) - `esp32s3/firmware/boards/mpython_v3/board.json:6-11` - `esp32s3/firmware/boards/labplus_Ledong_v2/board.json:6-11` - [docs/docs/zh_CN/index.rst:18-24](../../../products/mpython/index.rst)